package com.shop2cn.iapi.sqsynctrade.paremeter.mongo;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;

import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Field;

import com.shop2cn.iapi.sqsynctrade.paremeter.mongo.details.Delivery;
import com.shop2cn.iapi.sqsynctrade.paremeter.mongo.details.Fund;
import com.shop2cn.iapi.sqsynctrade.paremeter.mongo.details.PickupStore;
import com.shop2cn.iapi.sqsynctrade.paremeter.mongo.details.PrepaidCardRefund;
import com.shop2cn.iapi.sqsynctrade.paremeter.mongo.details.Product;
import com.shop2cn.iapi.sqsynctrade.paremeter.mongo.details.ProductProxyPo;
import com.shop2cn.iapi.sqsynctrade.paremeter.mongo.details.ProductSubCode;
import com.shop2cn.iapi.sqsynctrade.paremeter.mongo.details.Refund;
import com.shop2cn.iapi.sqsynctrade.paremeter.mongo.details.StatusLog;
import com.shop2cn.iapi.sqsynctrade.paremeter.mongo.details.SubProduct;
import com.ymttest.database.model.annotation.Column;
import com.ymttest.database.model.annotation.Table;
import com.ymttest.utils.compare.parameter.IgnoreParam;

public class Order {
	/**
	* order
	* 订单ID
	*/
	@Table("Ymt_Orders")
	@Column("iOrderId")
	@Id
	private Long id;

	/**
	 * 插入时间
	 */
	@Field("aT")
	@IgnoreParam
	private Date timeMongoAdd;
	
	/**
     * order
     * 申请补款时间
     */
    @Table("Ymt_Orders")
    @Column("dApplyPostPayTime")
    @Field("apPtTm")
    @Deprecated
    private Date applyPostTime;
    
    /**
     * order
     * 补款时间
     */
    @Table("Ymt_Orders")
    @Column("dPostPaidTime")
    @Field("ptTm")
    @Deprecated
    private Date postTime;

	/**
	 * 更新时间
	 */
	@Field("uT")
	@IgnoreParam
	private Date timeMongoUpdate;

	/**
	 * order
	 * 主单ID
	 */
	@Table("Ymt_Orders")
	@Column("iMainOrderId")
	@Field("main")
	private Long mainOrderId;

	/**
	 * order
	 * 买家
	 */
	@Table("Ymt_Orders")
	@Column("iUserId")
	@Field("user")
	private Long userId;

	/**
	 * order
	 * 卖家
	 */
	@Table("Ymt_Orders")
	@Column("iBuyerid")
	@Field("seller")
	private Long sellerId;

	/**
	 * order
	 * 下单时间
	 */
	@Table("Ymt_Orders")
	@Column("dAddTime")
	@Field("addTm")
	private Date addTime;

	/**
	 * order
	 * 交易ID
	 */
	@Table("Ymt_Orders")
	@Column("iTradingId")
	@Field("trdId")
	private Long tradingId;

	/**
	 * order
	 * 交易状态
	 */
	@Table("Ymt_Orders")
	@Column("iTradingStatus")
	@Field("st")
	private Integer tradingStatus;

	/**
	 * order
	 * 接单时间
	 */
	@Table("Ymt_Orders")
	@Column("dAcceptTime")
	@Field("acpTm")
	private Date acceptTime;

	/**
	 * order
	 * 发货时间
	 */
	@Table("Ymt_Orders")
	@Column("dDispathTime")
	@Field("dlvTm")
	private Date deliveryTime;

	/**
	 * order
	 * 付款时间
	 */
	@Table("Ymt_Orders")
	@Column("dPaidTime")
	@Field("paidTm")
	private Date paidTime;

	/**
	 * order
	 * 收货时间
	 */
	@Table("Ymt_Orders")
	@Column("dConfirmedTime")
	@Field("recvTm")
	private Date receiveTime;

	/**
	 * order
	 * 取消时间
	 */
	@Table("Ymt_Orders")
	@Column("dCancelTime")
	@Field("cncTm")
	private Date cancelTime;

	/**
	 * order
	 * 风控状态
	 */
	@Table("Ymt_Orders")
	@Column("iRiskVerifiedStatus")
	@Field("riskSt")
	private Integer riskStatus;

	/**
	 * order
	 * 买家登陆ID
	 */
	@Table("Ymt_Orders")
	@Column("sBuyerLoginId")
	@Field("userLgi")
	private String userLogin;

	/**
	 * order
	 * 卖家登陆ID
	 */
	@Table("Ymt_Orders")
	@Column("sSellerLoginId")
	@Field("sellerLgi")
	private String sellerLogin;

	/**
	 * order
	 * 拼邮是否国内配送
	 */
	@Table("Ymt_Orders")
	@Column("bDomesticDelivered")
	@Field("locDlv")
	private boolean localDelivery;

	/**
	 * order
	 * 是否删除
	 */
	@Table("Ymt_Orders")
	@Column("bDeleted")
	@Field("del")
	private boolean deleted;

	/**
	 * order
	 * 是否预售
	 */
	@Table("Ymt_Orders")
	@Column("bPreSale")
	@Field("preSale")
	private boolean preSale;

	/**
	 * order
	 * 旗子
	 */
	@Table("Ymt_O_OrderNote")
	@Column("iRemarkLevel")
	@Field("rmklvl")
	private Integer remarkLevel;

	/**
	 * order
	 * 自动取消小时
	 */
	@Table("Ymt_Orders")
	@Column("fAutoCancelOrderHours")
	@Field("autCncH")
	private BigDecimal autoCancelHour;

	/**
	 * order
	 * 是否贝海物流
	 */
	@Table("Ymt_Orders")
	@Column("bShippedByXlobo")
	@Field("xlobo")
	private boolean xlobo;

	/**
	 * order
	 * 平台优惠券
	 */
	@Table("Ymt_Orders")
	@Column("fYmtCouponAmount")
	@Field("ymtCopAmt")
	private BigDecimal ymtCouponAmount;

	/**
	 * order
	 * 平台优惠券码
	 */
	@Table("Ymt_Orders")
	@Column("sYmtCouponCode")
	@Field("ymtCopCod")
	private String ymtCouponCode;

	/**
	 * order
	 * 卖家优惠券
	 */
	@Table("Ymt_Orders")
	@Column("fSellerCouponAmount")
	@Field("sellerCopAmt")
	private BigDecimal sellerCouponAmount;

	/**
	 * order
	 * 卖家优惠券码
	 */
	@Table("Ymt_Orders")
	@Column("sSellerCouponCode")
	@Field("sellerCopCod")
	private String sellerCouponCode;

	/**
	 * order
	 * 卖家满减优惠
	 */
	@Table("Ymt_Orders")
	@Column("fSellerPromotionAmount")
	@Field("sellerPromAmt")
	private BigDecimal sellerPromotionAmount;

	/**
	 * 平台立减优惠
	 */
	@Field("ymtPromAmt")
	private BigDecimal ymtPromotionAmount;
	
	/**
	 * app内平台立减优惠
	 */
	@Field("payDeductAmt")
	private BigDecimal payDeductAmount;

	/**
	 * order
	 * 应付金额
	 */
	@Table("Ymt_Orders")
	@Column("fPayableAmount")
	@Field("payableAmt")
	private BigDecimal payableAmount;

	/**
	 * order
	 * 运费
	 */
	@Table("Ymt_Orders")
	@Column("fFreight")
	@Field("freight")
	private BigDecimal freight;
	
	/**
     * order
     * 定金
     */
    @Table("Ymt_Orders")
    @Column("fOrderPrice")
    @Field("ordPrc")
    @Deprecated
    private BigDecimal orderPrice;

	/**
	 * order
	 * 价格
	 */
	@Table("Ymt_Orders")
	@Column("fTotalPrice")
	@Field("prc")
	private BigDecimal totalPrice;

	/**
	 * order
	 * 下单折扣
	 */
	@Table("Ymt_Orders")
	@Column("fOrderDiscount")
	@Field("preDisc")
	private BigDecimal preDiscount;
	
	 /**
     * order
     * 补款折扣
     */
    @Table("Ymt_Orders")
    @Column("fDiscount")
    @Field("ptDisc")
    @Deprecated
    private BigDecimal postDiscount;
	
	/**
	 * order
	 * 加密地址
	 */
	@Field("uAdr")
	private String uaddress;

	/**
	 * order
	 * 邮编
	 */
	@Table("Ymt_Orders")
	@Column("sPostCode")
	@Field("ptCod")
	private String postCode;

	/**
	 * order
	 * 收货人
	 */
	@Table("Ymt_Orders")
	@Column("sReceivePerson")
	@Field("recv")
	private String receiver;
	
	/**
	 * order
	 * 加密手机
	 */
	@Field("uPhone")
	private String uphone;

	/**
	 * order
	 * 电话
	 */
	@Table("Ymt_Orders")
	@Column("sTelephone")
	@Field("tele")
	private String telephone;

	/**
	 * order
	 * 邮箱
	 */
	@Table("Ymt_Orders")
	@Column("sEmail")
	@Field("eml")
	private String email;

	/**
	 * order
	 * 留言
	 */
	@Table("Ymt_Orders")
	@Column("sLeaveWord")
	@Field("comment")
	private String comment;

	/**
	 * order
	 * 订单来源平台
	 */
	@Table("Ymt_OrderExt")
	@Column("sOrderSource")
	@Field("platSrc")
	private String platSource;

	/**
	 * order
	 * 需要上传身份证
	 */
	@Table("Ymt_OrderExt")
	@Column("bIsNeedUploadIdCard")
	@Field("needUpIC")
	private boolean needUploadIdCard;

	/**
	 * order
	 * 是否已经上传身份证
	 */
	@Table("Ymt_OrderExt")
	@Column("bHaveUploadedIdCard")
	@Field("upedIC")
	private boolean uploadedIdCard;

	/**
	 * order
	 * 卖家新客
	 */
	@Table("Ymt_OrderExt")
	@Column("bNewSellerOrder")
	@Field("newSeller")
	private Boolean newSeller;

	/**
	 * order
	 * 买家新客
	 */
	@Table("Ymt_OrderExt")
	@Column("bNewCustomerOrder")
	@Field("newUser")
	private Boolean newUser;

	/**
	 * order
	 * 是否自动确认收货
	 */
	@Table("Ymt_OrderExt")
	@Column("bAutoConfirmReceive")
	@Field("autCfm")
	private Boolean autoConfirm;

	/**
	 * order
	 * 支付方式
	 */
	@Table("Ymt_TradingInfo")
	@Column("sPayChannel")
	@Field("payChl")
	private String payChannel;

	/**
	 * order
	 * 向支付方提供的商户订单号(支付生成)
	 */
	@Table("Ymt_PaymentInstruction")
	@Column("PayGetwayPaymentId")
	@Field("payId")
	private String payId;

	/**
	 * order
	 * 支付方式
	 */
	@Table("Ymt_TradingInfo")
	@Column("sTradeNo")
	@Field("payNo")
	private String tradeNo;

	/**
	 * order
	 * 取消原因
	 */
	@Table("Ymt_OrderReason")
	@Column("sReason")
	@Field("reason")
	private String reason;

	/**
	 * order
	 * 卖家备注
	 */
	@Table("Ymt_O_OrderNote")
	@Column("sContent")
	@Field("sellerCont")
	private String content;

	/**
	 * order
	 * 卖家备注时间
	 */
	@Table("Ymt_O_OrderNote")
	@Column("dAddTime")
	@Field("sellerNtTm")
	private Date noteTime;

	/**
	 * 物流方式
	 */
	@Field("dlvTp")
	private Integer deliveryType;

	/**
	 * 已发货或拼邮国际国内段都发货
	 */
	@Field("dlved")
	private boolean delivered;

	/**
	 * 是否买手代理账号下单
	 */
	@Field("sa")
	private boolean sellerAgent;

	/**
	 * 业务Id
	 */
	@Table("Ymt_OrderBiz")
	@Column("BizId")
	@Field("bizId")
	private String bizId;

	/**
	 * 业务状态
	 */
	@Table("Ymt_OrderBiz")
	@Column("BizStatus")
	@Field("bizSt")
	private Integer bizStatus;

	/**
	 * 业务类型
	 */
	@Table("Ymt_OrderBiz")
	@Column("BizType")
	@Field("bizTp")
	private Integer bizType;

	/**
	 * 业务子类型
	 */
	@Table("Ymt_OrderBiz")
	@Column("BizSubType")
	@Field("bizSubTp")
	private Integer bizSubType;

	/**
	 * fund
	 */
	@Field("fund")
	private Fund fund;

	/**
	 * prds
	 */
	@Field("prds")
	private List<Product> products;

	/**
	 * rfds
	 */
	@Field("rfds")
	private List<Refund> refunds;

	/**
	 * stLog
	 */
	@Field("stls")
	private List<StatusLog> statusLog;

	/**
	 * subPrds
	 */
	@Field("subprds")
	private List<SubProduct> subProducts;

	@Field("mapprds")
	private HashMap<String, List<SubProduct>> mapProducts;

	/**
	 * dlv
	 */
	@Field("dlv")
	private Delivery delivery;

	/**
	 * 退款单号
	 */
	@Field("ppcNos")
	private List<String> prepaidCardNos;

	/**
	 * 退款明细
	 */
	@Field("ppcRfds")
	private List<PrepaidCardRefund> prepaidCardRefunds;

	@Field("optimum")
	private boolean optimumSeller;
	
	/**
	 * 推手ID
	 */
	@Field("hunterId")
	private long hunterId;
	
	/**
	 * 1： 大礼包；2：普通商品
	 */
	@Field("hOrdTp")
	private int hunterOrderType;
	
	/**
	 * 预售优惠金额
	 */
	@Field("bkPromAmt")
	private BigDecimal bookingPromotionAmount;
	
	/**
	 * 全款支付开始时间
	 */
	@Field("payStTm")
	private Date paymentStartTime;
	
	/**
	 * 全款支付结束时间
	 */
	@Field("payEdTm")
	private Date paymentEndTime;
	
	/**
	 * 定金支付金额
	 */
	@Field("entAmt")
	private BigDecimal earnestAmount;
	
	/**
	 * 定金支付时间
	 */
	@Field("entPaidTm")
	private Date earnestPaidTime;
	
	/**
	 * 发货截止时间
	 */
	@Field("dlvEndTm")
	private Date deliverEndTime;
	
	/**
	 * 预售订单是否能确认
	 */
	@Field("canCfm")
	private boolean canConfirm;
	
	/**
	 * 地址编号
	 */
	@Field("addressId")
	private long addressId;
	
	/**
	 * 定金第三方退款状态
	 */
	@Field("entThirdRefSt")
	private Integer earnestThirdpartyRefundStatus;
	
	/**
	 * 全款第三方退款状态
	 */
	@Field("fullThirdRefSt")
	private Integer fullThirdpartyRefundStatus;
	
	/**
     * 二次确认时间
     */
    @Field("secCfmTm")
    private Date secondConfirmTime;
    
    /**
     * 货主
     */
    @Field("gOwnerId")
    private Long goodsOwnerId;
    
    /**
     * 销售员
     */
    @Field("salesman")
    private long salesman;
    
    /**
     * 神器物流类型
     */
    @Field("sqDlvTp")
    private int shenqiLogisticsType;
   
    /**
	 * 代理链条明细
	 */
	@Field("productProxies")
	private List<ProductProxyPo> productProxies;
	
	 /**
     * 拼邮发货类型 (空老订单，兼容)
     * 1.国际
     * 2.国内
     */
	@Field("pdTp")
    private Integer packageDeliveryType;
	
	/**
     * 买手备注
     */
	@Field("sellerMemo")
    private String sellerMemo;
	
	/**
     * 支付币种
     */
	@Field("currency")
    private String currency;

	/**
     * 支付汇率
     */
	@Field("ecRate")
    private String exchangeRate;
	
	/**
     * 支付人民币金额
     */
	@Field("sqRMBAmt")
    private BigDecimal shenqiPaymentRmbAmount;
	
	/**
     * 币种符号
     */
	@Field("currencySbol")
    private String currencySymbol;

	 /**
     * order
     * 神器需要上传身份证
     * 0:不需要；1：需要号码；2：需要图片
     */
    @Field("sqUpICRm")
    private Integer shenqiIdcardRequirement;
    
    /**
     * 邀请人id
     */
    @Field("shUserId")
    private Long shareUserId;

    /**
     * 订单使用返点金额
     */
    @Field("rbPdAmt")
    private BigDecimal rebatePaidAmount;

    /**
     * 订单类型
     */
    @Field("ot")
    private Integer orderType;

    /**
     *是否实际产生返点
     */
    @Field("actRb")
    private boolean actualRebate;
    
    /**
     *订单购买者获得的返点金额
     */
    @Field("ownerRbAmt")
    private BigDecimal orderOwnerRebateAmount;
    
    /**
     * 会员订单和普通商品订单同时下单，普通商品订单同步会员订单的支付金额
     */
    @Field("mbOrderPdAmt")
    private BigDecimal memberOrderPaidAmount;
    
    /**
     * 是否支持线下支付
     */
    @Field("supOflPay")
    private Boolean supportOfflinePay;
    
    /**
     * 买家是否确认线下支付
     */
    @Field("oflPay")
    private Boolean offlinePayFlag;
    
    /**
     * 是否神器代理购买订单
     */
    @Field("spbOrder")
    private Boolean shenqiProxyBuyOrder;
    
    /**
     * 订单别名
     */
    @Field("oAlias")
    private String orderAlias;
    
    /**
     * Ubuy下单人名称
     */
    @Field("userName")
    private String userName;
    
    /**
     * 护照
     */
    @Field("passport")
    private String passport;
    
    /**
     * 护照签发地
     */
    @Field("pIPlace")
    private String passportIssuePlace;
    
    /**
     * 是否自提
     */
    @Field("puInSto")
    private Boolean pickupInStores;

    /**
     * 自提买家联系方式
     */
    @Field("puUserPho")
    private String pickupUserPhone;
    
    /**
     * 自提点
     */
    @Field("puName")
    private String pickupName;
    
    /**
     * 自提点详细地址
     */
    @Field("puAdr")
    private String pickupAddress;
    
    /**
     * 自提点联系方式
     */
    @Field("puPho")
    private String pickupPhone;
    
    /**
     * 订购人身份证信息id
     */
    @Field("pchIcId")
    private Long purchaserIdcardId;
    
    /**
     * 外部推广id
     */
    @Field("outerPromId")
    private String outerPromotionId;
    
    /**
     * 分仓ID
     */
    @Field("whId")
    private Integer warehouseId;
    
    /**
     * 部分发货状态（1：部分发货，2：完成发货）
     */
    @Field("parDelSt")
    private Integer partialDeliveryStatus;
    
    /**
     * 神器分销员id
     */
    @Field("distributorId")
    private Long distributorId;
    
    /**
     * entry_id_type INTEGER(10)<br>
     * 入境证件类型
     * 1. 普通护照 2.外交护照 3. 公务护照 4.港澳台通行证 5. 台湾通行证 6.中华人民共和国旅行证
     */
    @Field("entryIdType")
    private Integer entryIdType;

    /**
     * entry_id_no VARCHAR(100)<br>
     * 入境证件号
     */
    @Field("entryIdNo")
    private String entryIdNo;

    /**
     * entry_time TIMESTAMP(19)<br>
     * 入境时间
     */
    @Field("entryTime")
    private Date entryTime;

    /**
     * entry_port VARCHAR(100)<br>
     * 入境口岸
     */
    @Field("entryPort")
    private String entryPort;

    /**
     * transportation VARCHAR(100)<br>
     * 交通方式
     */
    @Field("transportation")
    private String transportation;
    
    /**
     * waitInStock
     * 等待库存核销（0：无需核销或已核销 1：等待核销）
     */
    @Field("wtInSto")
    private Boolean waitInStock;
    
    /**
     * 核销时间
     */
    @Field("inStoTm")
    private Date inStockTime;
    
    /**
     * 代下单id
     */
    @Field("proxyOrderId")
    private Long proxyOrderId;
    
    /**
     * 0：未退货 1：已部分退货 2：已全部退货
     */
    @Field("rtnPrdSt")
    private Integer returnProductStatus;
    
    /**
     * 是否奢品
     */
    @Field("lux")
    private Boolean luxury;
    
    
    /**
     * 是否已签收
     */
    @Field("lgs")
    private Boolean logistic;
    
    /**
     * 服务费
     */
    @Field("serviceAmt")
    private BigDecimal serviceAmount;
    
    /**
     * 鉴别服务标记
     */
    @Field("auctFlag")
    private Boolean authenticateFlag;
    
    /**
     * 买家鉴别费
     */
    @Field("userAuctFee")
    private BigDecimal userAuthenticateFee;
    
    /**
     * 鉴别物流费
     */
    @Field("auctFreight")
    private BigDecimal authenticateFreight;
    
    /**
     * 鉴别物流费类型承担方（1,、买手 2、买家）
     */
    @Field("auctFreightTp")
    private Integer authenticateFreightType;
    
    /**
     * 是否官方物流
     */
    @Field("officLg")
    private Boolean officialLogistics;
    
    /**
     * 签收时效
     */
    @Field("lgAg")
    private Integer logisticsAging;
    
    /**
     * 线下付款并且被风控的订单
     */
    @Field("pr")
    private Boolean placeRisk;
    
    /**
     * 是否需要补填国内段
     */
    @Field("suppDst")
    private Boolean supplementDomestic;
    
    /**
     * 线下支付凭证
     */
    @Field("voucherOriUrl")
    private String voucherOriginalUrl;
    
    @Field("payChlTy")
    private Integer payChannelType;
    
    /**
     * 海关推送的清关状态
     */
    @Field("cusClearanceSt")
    private Integer customsClearanceStatus;
    
    /**
     * 海关推送的清关状态描述
     */
    @Field("cusClearanceStDesc")
    private String customsClearanceStatusDesc;
    
    /**
     * 下单使用积分
     */
    @Field("integral")
    private Long integral;

    /**
     * 下单使用积分抵扣金额
     */
    @Field("integralDeAmt")
    private BigDecimal integralDeductionAmount;
    
    /**
     * 是否海关风控
     */
    @Field("customsRisk")
    private Boolean customsRisk;

    /**
     * 海关风控原因
     */
    @Field("customsRiskRemark")
    private String customsRiskRemark;

    /**
     * 订购人身份证校验结果
     */
    @Field("idCardChkRst")
    private Integer idCardCheckResult;
    
    /**
     * 是否多段式发货
     */
    @Field("multiSegDlv")
    private Boolean multiSegmentDelivery;
    
    /**
     * 自定义结算币种类型
     */
    @Field("csSettCurTp")
    private Integer customSettlementCurrencyType;
    
    /**
     * 商品subCodes
     */
    @Field("prdSubCds")
	private List<ProductSubCode> productSubCodes;
    
    /**
     * 是否为直播订单
     */
    @Field("liveOrder")
    private Boolean liveOrder;
    
    /**
     * 区域折扣比例
     */
    @Field("rgDisRt")
    private BigDecimal regionDiscountRatio;
    
    /**
     * 区域折扣金额
     */
    @Field("rgDisAmt")
    private BigDecimal regionDiscountAmount;
    
    /**
     * 卖家优惠券来源：0/null：越洋电铺，1：中免大会员
     */
    @Field("sellerCopSrc")
    private Integer sellerCouponSource;
    
    /**
     * 卖家券类型：0/null：满减券，1：满折券，2：代金券
     */
    @Field("sellerCopTp")
    private Integer sellerCouponType;
    
    /**
     * '代付人id'
     */
    @Field("helpPayUId")
    private Long helpPayUserId;
    
    /**
     * '预售订单承诺发货时间'
     */
    @Field("enDlyPmDys")
    private Integer earnestDeliveryPromiseDays;
    
    /**
     * '订单商品跨境类型：1:都是境外商品，2：都是境内商品'
     */
    @Field("crsBdTy")
    private Integer crossBorderType;
    
    /**
     * 订单标记，二进制位存储
     */
    @Field("orderFlags")
    private Integer orderFlags;
    
    /**
     * 自提信息
     */
    @Field("pickup")
    private PickupStore pickupStore;
    
    // 无需同步的参数，验证用
    private Boolean isFullPaidOrder;
    
	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public long getHunterId() {
		return hunterId;
	}

	public void setHunterId(long hunterId) {
		this.hunterId = hunterId;
	}

	public int getHunterOrderType() {
		return hunterOrderType;
	}

	public void setHunterOrderType(int hunterOrderType) {
		this.hunterOrderType = hunterOrderType;
	}

	public Date getTimeMongoAdd() {
		return timeMongoAdd;
	}

	public void setTimeMongoAdd(Date timeMongoAdd) {
		this.timeMongoAdd = timeMongoAdd;
	}

	public Date getTimeMongoUpdate() {
		return timeMongoUpdate;
	}

	public void setTimeMongoUpdate(Date timeMongoUpdate) {
		this.timeMongoUpdate = timeMongoUpdate;
	}

	public Long getMainOrderId() {
		return mainOrderId;
	}

	public void setMainOrderId(Long mainOrderId) {
		this.mainOrderId = mainOrderId;
	}

	public Long getUserId() {
		return userId;
	}

	public void setUserId(Long userId) {
		this.userId = userId;
	}

	public Long getSellerId() {
		return sellerId;
	}

	public void setSellerId(Long sellerId) {
		this.sellerId = sellerId;
	}

	public Date getAddTime() {
		return addTime;
	}

	public void setAddTime(Date addTime) {
		this.addTime = addTime;
	}

	public Long getTradingId() {
		return tradingId;
	}

	public void setTradingId(Long tradingId) {
		this.tradingId = tradingId;
	}

	public Integer getTradingStatus() {
		return tradingStatus;
	}

	public void setTradingStatus(Integer tradingStatus) {
		this.tradingStatus = tradingStatus;
	}

	public Date getAcceptTime() {
		return acceptTime;
	}

	public void setAcceptTime(Date acceptTime) {
		this.acceptTime = acceptTime;
	}

	public Date getDeliveryTime() {
		return deliveryTime;
	}

	public void setDeliveryTime(Date deliveryTime) {
		this.deliveryTime = deliveryTime;
	}

	public Date getPaidTime() {
		return paidTime;
	}

	public void setPaidTime(Date paidTime) {
		this.paidTime = paidTime;
	}

	public Date getReceiveTime() {
		return receiveTime;
	}

	public void setReceiveTime(Date receiveTime) {
		this.receiveTime = receiveTime;
	}

	public Date getCancelTime() {
		return cancelTime;
	}

	public void setCancelTime(Date cancelTime) {
		this.cancelTime = cancelTime;
	}

	public Integer getRiskStatus() {
		return riskStatus;
	}

	public void setRiskStatus(Integer riskStatus) {
		this.riskStatus = riskStatus;
	}

	public String getUserLogin() {
		return userLogin;
	}

	public void setUserLogin(String userLogin) {
		this.userLogin = userLogin;
	}

	public String getSellerLogin() {
		return sellerLogin;
	}

	public void setSellerLogin(String sellerLogin) {
		this.sellerLogin = sellerLogin;
	}

	public boolean isLocalDelivery() {
		return localDelivery;
	}

	public void setLocalDelivery(boolean localDelivery) {
		this.localDelivery = localDelivery;
	}

	public boolean isDeleted() {
		return deleted;
	}

	public void setDeleted(boolean deleted) {
		this.deleted = deleted;
	}

	public boolean isPreSale() {
		return preSale;
	}

	public void setPreSale(boolean preSale) {
		this.preSale = preSale;
	}

	public Integer getRemarkLevel() {
		return remarkLevel;
	}

	public void setRemarkLevel(Integer remarkLevel) {
		this.remarkLevel = remarkLevel;
	}

	public BigDecimal getAutoCancelHour() {
		return autoCancelHour;
	}

	public void setAutoCancelHour(BigDecimal autoCancelHour) {
		this.autoCancelHour = autoCancelHour;
	}

	public boolean isXlobo() {
		return xlobo;
	}

	public void setXlobo(boolean xlobo) {
		this.xlobo = xlobo;
	}

	public BigDecimal getYmtCouponAmount() {
		return ymtCouponAmount;
	}

	public void setYmtCouponAmount(BigDecimal ymtCouponAmount) {
		this.ymtCouponAmount = ymtCouponAmount;
	}

	public String getYmtCouponCode() {
		return ymtCouponCode;
	}

	public void setYmtCouponCode(String ymtCouponCode) {
		this.ymtCouponCode = ymtCouponCode;
	}

	public BigDecimal getSellerCouponAmount() {
		return sellerCouponAmount;
	}

	public void setSellerCouponAmount(BigDecimal sellerCouponAmount) {
		this.sellerCouponAmount = sellerCouponAmount;
	}

	public String getSellerCouponCode() {
		return sellerCouponCode;
	}

	public void setSellerCouponCode(String sellerCouponCode) {
		this.sellerCouponCode = sellerCouponCode;
	}

	public BigDecimal getSellerPromotionAmount() {
		return sellerPromotionAmount;
	}

	public void setSellerPromotionAmount(BigDecimal sellerPromotionAmount) {
		this.sellerPromotionAmount = sellerPromotionAmount;
	}

	public BigDecimal getPayableAmount() {
		return payableAmount;
	}

	public void setPayableAmount(BigDecimal payableAmount) {
		this.payableAmount = payableAmount;
	}

	public BigDecimal getFreight() {
		return freight;
	}

	public void setFreight(BigDecimal freight) {
		this.freight = freight;
	}

	public BigDecimal getTotalPrice() {
		return totalPrice;
	}

	public void setTotalPrice(BigDecimal totalPrice) {
		this.totalPrice = totalPrice;
	}

	public BigDecimal getPreDiscount() {
		return preDiscount;
	}

	public void setPreDiscount(BigDecimal preDiscount) {
		this.preDiscount = preDiscount;
	}
	
	public String getPostCode() {
		return postCode;
	}

	public void setPostCode(String postCode) {
		this.postCode = postCode;
	}

	public String getReceiver() {
		return receiver;
	}

	public void setReceiver(String receiver) {
		this.receiver = receiver;
	}

	public String getTelephone() {
		return telephone;
	}

	public void setTelephone(String telephone) {
		this.telephone = telephone;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public String getComment() {
		return comment;
	}

	public void setComment(String comment) {
		this.comment = comment;
	}

	public String getPlatSource() {
		return platSource;
	}

	public void setPlatSource(String platSource) {
		this.platSource = platSource;
	}

	public boolean isNeedUploadIdCard() {
		return needUploadIdCard;
	}

	public void setNeedUploadIdCard(boolean needUploadIdCard) {
		this.needUploadIdCard = needUploadIdCard;
	}

	public boolean isUploadedIdCard() {
		return uploadedIdCard;
	}

	public void setUploadedIdCard(boolean uploadedIdCard) {
		this.uploadedIdCard = uploadedIdCard;
	}

	public Boolean isNewSeller() {
		return newSeller;
	}

	public void setNewSeller(Boolean newSeller) {
		this.newSeller = newSeller;
	}

	public Boolean isNewUser() {
		return newUser;
	}

	public void setNewUser(Boolean newUser) {
		this.newUser = newUser;
	}

	public Boolean getAutoConfirm() {
		return autoConfirm;
	}

	public void setAutoConfirm(Boolean autoConfirm) {
		this.autoConfirm = autoConfirm;
	}

	public String getPayChannel() {
		return payChannel;
	}

	public void setPayChannel(String payChannel) {
		this.payChannel = payChannel;
	}

	public String getPayId() {
		return payId;
	}

	public void setPayId(String payId) {
		this.payId = payId;
	}

	public String getTradeNo() {
		return tradeNo;
	}

	public void setTradeNo(String tradeNo) {
		this.tradeNo = tradeNo;
	}

	public String getReason() {
		return reason;
	}

	public void setReason(String reason) {
		this.reason = reason;
	}

	public String getContent() {
		return content;
	}

	public void setContent(String content) {
		this.content = content;
	}

	public Date getNoteTime() {
		return noteTime;
	}

	public void setNoteTime(Date noteTime) {
		this.noteTime = noteTime;
	}

	public Integer getDeliveryType() {
		return deliveryType;
	}

	public void setDeliveryType(Integer deliveryType) {
		this.deliveryType = deliveryType;
	}

	public boolean isDelivered() {
		return delivered;
	}

	public void setDelivered(boolean delivered) {
		this.delivered = delivered;
	}

	public Fund getFund() {
		return fund;
	}

	public void setFund(Fund fund) {
		this.fund = fund;
	}

	public List<Product> getProducts() {
		return products;
	}

	public void setProducts(List<Product> products) {
		this.products = products;
	}

	public List<Refund> getRefunds() {
		return refunds;
	}

	public void setRefunds(List<Refund> refunds) {
		this.refunds = refunds;
	}

	public List<StatusLog> getStatusLog() {
		return statusLog;
	}

	public void setStatusLog(List<StatusLog> statusLog) {
		this.statusLog = statusLog;
	}

	public Delivery getDelivery() {
		return delivery;
	}

	public void setDelivery(Delivery delivery) {
		this.delivery = delivery;
	}

	public String getBizId() {
		return bizId;
	}

	public void setBizId(String bizId) {
		this.bizId = bizId;
	}

	public Integer getBizStatus() {
		return bizStatus;
	}

	public void setBizStatus(Integer bizStatus) {
		this.bizStatus = bizStatus;
	}

	public Integer getBizType() {
		return bizType;
	}

	public void setBizType(Integer bizType) {
		this.bizType = bizType;
	}

	public Integer getBizSubType() {
		return bizSubType;
	}

	public void setBizSubType(Integer bizSubType) {
		this.bizSubType = bizSubType;
	}

	public List<SubProduct> getSubProducts() {
		return subProducts;
	}

	public void setSubProducts(List<SubProduct> subProducts) {
		this.subProducts = subProducts;
	}

	public HashMap<String, List<SubProduct>> getMapProducts() {
		if (subProducts == null || subProducts.size() == 0) {
			return null;
		}
		if (mapProducts == null || mapProducts.size() == 0) {
			mapProducts = new HashMap<>();
			for (SubProduct subPrd : subProducts) {
				if (!mapProducts.containsKey(subPrd.getCatalogId())) {
					mapProducts.put(subPrd.getCatalogId(), new ArrayList<>());
				}
				mapProducts.get(subPrd.getCatalogId()).add(subPrd);
			}
		}
		return mapProducts;
	}

	public List<PrepaidCardRefund> getPrepaidCardRefunds() {
		return prepaidCardRefunds;
	}

	public void setPrepaidCardRefunds(List<PrepaidCardRefund> prepaidCardRefunds) {
		this.prepaidCardRefunds = prepaidCardRefunds;
	}

	public List<String> getPrepaidCardNos() {
		return prepaidCardNos;
	}

	public void setPrepaidCardNos(List<String> prepaidCardNos) {
		this.prepaidCardNos = prepaidCardNos;
	}

	public boolean isOptimumSeller() {
		return optimumSeller;
	}

	public void setOptimumSeller(boolean optimumSeller) {
		this.optimumSeller = optimumSeller;
	}

	public BigDecimal getYmtPromotionAmount() {
		return ymtPromotionAmount;
	}

	public void setYmtPromotionAmount(BigDecimal ymtPromotionAmount) {
		this.ymtPromotionAmount = ymtPromotionAmount;
	}

	public BigDecimal getPayDeductAmount() {
		return payDeductAmount;
	}

	public void setPayDeductAmount(BigDecimal payDeductAmount) {
		this.payDeductAmount = payDeductAmount;
	}

	public boolean isSellerAgent() {
		return sellerAgent;
	}

	public void setSellerAgent(boolean sellerAgent) {
		this.sellerAgent = sellerAgent;
	}

	public Boolean getNewSeller() {
		return newSeller;
	}

	public Boolean getNewUser() {
		return newUser;
	}

	public void setMapProducts(HashMap<String, List<SubProduct>> mapProducts) {
		this.mapProducts = mapProducts;
	}

	public String getUaddress() {
		return uaddress;
	}

	public void setUaddress(String uaddress) {
		this.uaddress = uaddress;
	}

	public String getUphone() {
		return uphone;
	}

	public void setUphone(String uphone) {
		this.uphone = uphone;
	}

	public BigDecimal getBookingPromotionAmount() {
		return bookingPromotionAmount;
	}

	public void setBookingPromotionAmount(BigDecimal bookingPromotionAmount) {
		this.bookingPromotionAmount = bookingPromotionAmount;
	}

	public Date getPaymentStartTime() {
		return paymentStartTime;
	}

	public void setPaymentStartTime(Date paymentStartTime) {
		this.paymentStartTime = paymentStartTime;
	}

	public Date getPaymentEndTime() {
		return paymentEndTime;
	}

	public void setPaymentEndTime(Date paymentEndTime) {
		this.paymentEndTime = paymentEndTime;
	}

	public BigDecimal getEarnestAmount() {
		return earnestAmount;
	}

	public void setEarnestAmount(BigDecimal earnestAmount) {
		this.earnestAmount = earnestAmount;
	}

	public Date getEarnestPaidTime() {
		return earnestPaidTime;
	}

	public void setEarnestPaidTime(Date earnestPaidTime) {
		this.earnestPaidTime = earnestPaidTime;
	}

	public Date getDeliverEndTime() {
		return deliverEndTime;
	}

	public void setDeliverEndTime(Date deliverEndTime) {
		this.deliverEndTime = deliverEndTime;
	}

	public boolean isCanConfirm() {
		return canConfirm;
	}

	public void setCanConfirm(boolean canConfirm) {
		this.canConfirm = canConfirm;
	}
	
	public long getAddressId() {
		return addressId;
	}

	public void setAddressId(long addressId) {
		this.addressId = addressId;
	}

	public Integer getEarnestThirdpartyRefundStatus() {
		return earnestThirdpartyRefundStatus;
	}

	public void setEarnestThirdpartyRefundStatus(
			Integer earnestThirdpartyRefundStatus) {
		this.earnestThirdpartyRefundStatus = earnestThirdpartyRefundStatus;
	}

	public Integer getFullThirdpartyRefundStatus() {
		return fullThirdpartyRefundStatus;
	}

	public void setFullThirdpartyRefundStatus(Integer fullThirdpartyRefundStatus) {
		this.fullThirdpartyRefundStatus = fullThirdpartyRefundStatus;
	}

	public Date getSecondConfirmTime() {
		return secondConfirmTime;
	}

	public void setSecondConfirmTime(Date secondConfirmTime) {
		this.secondConfirmTime = secondConfirmTime;
	}

	public List<ProductProxyPo> getProductProxies() {
		return productProxies;
	}

	public void setProductProxies(List<ProductProxyPo> productProxies) {
		this.productProxies = productProxies;
	}

	public Long getGoodsOwnerId() {
		return goodsOwnerId;
	}

	public void setGoodsOwnerId(Long goodsOwnerId) {
		this.goodsOwnerId = goodsOwnerId;
	}

	public long getSalesman() {
		return salesman;
	}

	public void setSalesman(long salesman) {
		this.salesman = salesman;
	}

	public int getShenqiLogisticsType() {
		return shenqiLogisticsType;
	}

	public void setShenqiLogisticsType(int shenqiLogisticsType) {
		this.shenqiLogisticsType = shenqiLogisticsType;
	}

	public BigDecimal getOrderPrice() {
		return orderPrice;
	}

	public void setOrderPrice(BigDecimal orderPrice) {
		this.orderPrice = orderPrice;
	}

	public BigDecimal getPostDiscount() {
		return postDiscount;
	}

	public void setPostDiscount(BigDecimal postDiscount) {
		this.postDiscount = postDiscount;
	}

	public Date getApplyPostTime() {
		return applyPostTime;
	}

	public void setApplyPostTime(Date applyPostTime) {
		this.applyPostTime = applyPostTime;
	}

	public Date getPostTime() {
		return postTime;
	}

	public void setPostTime(Date postTime) {
		this.postTime = postTime;
	}

	public Integer getPackageDeliveryType() {
		return packageDeliveryType;
	}

	public void setPackageDeliveryType(Integer packageDeliveryType) {
		this.packageDeliveryType = packageDeliveryType;
	}

	public String getSellerMemo() {
		return sellerMemo;
	}

	public void setSellerMemo(String sellerMemo) {
		this.sellerMemo = sellerMemo;
	}

	public String getCurrency() {
		return currency;
	}

	public void setCurrency(String currency) {
		this.currency = currency;
	}

	public String getExchangeRate() {
		return exchangeRate;
	}

	public void setExchangeRate(String exchangeRate) {
		this.exchangeRate = exchangeRate;
	}

	public BigDecimal getShenqiPaymentRmbAmount() {
		return shenqiPaymentRmbAmount;
	}

	public void setShenqiPaymentRmbAmount(BigDecimal shenqiPaymentRmbAmount) {
		this.shenqiPaymentRmbAmount = shenqiPaymentRmbAmount;
	}

	public String getCurrencySymbol() {
		return currencySymbol;
	}

	public void setCurrencySymbol(String currencySymbol) {
		this.currencySymbol = currencySymbol;
	}

	public Integer getShenqiIdcardRequirement() {
		return shenqiIdcardRequirement;
	}

	public void setShenqiIdcardRequirement(Integer shenqiIdcardRequirement) {
		this.shenqiIdcardRequirement = shenqiIdcardRequirement;
	}

	public Long getShareUserId() {
		return shareUserId;
	}

	public void setShareUserId(Long shareUserId) {
		this.shareUserId = shareUserId;
	}

	public BigDecimal getRebatePaidAmount() {
		return rebatePaidAmount;
	}

	public void setRebatePaidAmount(BigDecimal rebatePaidAmount) {
		this.rebatePaidAmount = rebatePaidAmount;
	}

	public Integer getOrderType() {
		return orderType;
	}

	public void setOrderType(Integer orderType) {
		this.orderType = orderType;
	}

	public boolean isActualRebate() {
		return actualRebate;
	}

	public void setActualRebate(boolean actualRebate) {
		this.actualRebate = actualRebate;
	}

	public BigDecimal getOrderOwnerRebateAmount() {
		return orderOwnerRebateAmount;
	}

	public void setOrderOwnerRebateAmount(BigDecimal orderOwnerRebateAmount) {
		this.orderOwnerRebateAmount = orderOwnerRebateAmount;
	}

	public BigDecimal getMemberOrderPaidAmount() {
		return memberOrderPaidAmount;
	}

	public void setMemberOrderPaidAmount(BigDecimal memberOrderPaidAmount) {
		this.memberOrderPaidAmount = memberOrderPaidAmount;
	}

	public Boolean getSupportOfflinePay() {
		return supportOfflinePay;
	}

	public void setSupportOfflinePay(Boolean supportOfflinePay) {
		this.supportOfflinePay = supportOfflinePay;
	}

	public Boolean getOfflinePayFlag() {
		return offlinePayFlag;
	}

	public void setOfflinePayFlag(Boolean offlinePayFlag) {
		this.offlinePayFlag = offlinePayFlag;
	}

	public Boolean getShenqiProxyBuyOrder() {
		return shenqiProxyBuyOrder;
	}

	public void setShenqiProxyBuyOrder(Boolean shenqiProxyBuyOrder) {
		this.shenqiProxyBuyOrder = shenqiProxyBuyOrder;
	}

	public String getOrderAlias() {
		return orderAlias;
	}

	public void setOrderAlias(String orderAlias) {
		this.orderAlias = orderAlias;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getPassport() {
		return passport;
	}

	public void setPassport(String passport) {
		this.passport = passport;
	}

	public String getPassportIssuePlace() {
		return passportIssuePlace;
	}

	public void setPassportIssuePlace(String passportIssuePlace) {
		this.passportIssuePlace = passportIssuePlace;
	}

	public Boolean getPickupInStores() {
		return pickupInStores;
	}

	public void setPickupInStores(Boolean pickupInStores) {
		this.pickupInStores = pickupInStores;
	}

	public String getPickupUserPhone() {
		return pickupUserPhone;
	}

	public void setPickupUserPhone(String pickupUserPhone) {
		this.pickupUserPhone = pickupUserPhone;
	}

	public String getPickupName() {
		return pickupName;
	}

	public void setPickupName(String pickupName) {
		this.pickupName = pickupName;
	}

	public String getPickupAddress() {
		return pickupAddress;
	}

	public void setPickupAddress(String pickupAddress) {
		this.pickupAddress = pickupAddress;
	}

	public String getPickupPhone() {
		return pickupPhone;
	}

	public void setPickupPhone(String pickupPhone) {
		this.pickupPhone = pickupPhone;
	}

	public Long getPurchaserIdcardId() {
		return purchaserIdcardId;
	}

	public void setPurchaserIdcardId(Long purchaserIdcardId) {
		this.purchaserIdcardId = purchaserIdcardId;
	}

	public String getOuterPromotionId() {
		return outerPromotionId;
	}

	public void setOuterPromotionId(String outerPromotionId) {
		this.outerPromotionId = outerPromotionId;
	}

	public Integer getWarehouseId() {
		return warehouseId;
	}

	public void setWarehouseId(Integer warehouseId) {
		this.warehouseId = warehouseId;
	}

	public Integer getPartialDeliveryStatus() {
		return partialDeliveryStatus;
	}

	public void setPartialDeliveryStatus(Integer partialDeliveryStatus) {
		this.partialDeliveryStatus = partialDeliveryStatus;
	}

	public Long getDistributorId() {
		return distributorId;
	}

	public void setDistributorId(Long distributorId) {
		this.distributorId = distributorId;
	}

	public Integer getEntryIdType() {
		return entryIdType;
	}

	public void setEntryIdType(Integer entryIdType) {
		this.entryIdType = entryIdType;
	}

	public String getEntryIdNo() {
		return entryIdNo;
	}

	public void setEntryIdNo(String entryIdNo) {
		this.entryIdNo = entryIdNo;
	}

	public Date getEntryTime() {
		return entryTime;
	}

	public void setEntryTime(Date entryTime) {
		this.entryTime = entryTime;
	}

	public String getEntryPort() {
		return entryPort;
	}

	public void setEntryPort(String entryPort) {
		this.entryPort = entryPort;
	}

	public String getTransportation() {
		return transportation;
	}

	public void setTransportation(String transportation) {
		this.transportation = transportation;
	}
	
	public Boolean getWaitInStock() {
		return waitInStock;
	}

	public void setWaitInStock(Boolean waitInStock) {
		this.waitInStock = waitInStock;
	}

	public Date getInStockTime() {
		return inStockTime;
	}

	public void setInStockTime(Date inStockTime) {
		this.inStockTime = inStockTime;
	}

	public Long getProxyOrderId() {
		return proxyOrderId;
	}

	public void setProxyOrderId(Long proxyOrderId) {
		this.proxyOrderId = proxyOrderId;
	}

	public Integer getReturnProductStatus() {
		return returnProductStatus;
	}

	public void setReturnProductStatus(Integer returnProductStatus) {
		this.returnProductStatus = returnProductStatus;
	}

	public Boolean getLuxury() {
		return luxury;
	}

	public void setLuxury(Boolean luxury) {
		this.luxury = luxury;
	}	

	public Boolean getLogistic() {
		return logistic;
	}

	public void setLogistic(Boolean logistic) {
		this.logistic = logistic;
	}

	public BigDecimal getServiceAmount() {
		return serviceAmount;
	}

	public void setServiceAmount(BigDecimal serviceAmount) {
		this.serviceAmount = serviceAmount;
	}

	public Boolean getAuthenticateFlag() {
		return authenticateFlag;
	}

	public void setAuthenticateFlag(Boolean authenticateFlag) {
		this.authenticateFlag = authenticateFlag;
	}

	public BigDecimal getUserAuthenticateFee() {
		return userAuthenticateFee;
	}

	public void setUserAuthenticateFee(BigDecimal userAuthenticateFee) {
		this.userAuthenticateFee = userAuthenticateFee;
	}

	public BigDecimal getAuthenticateFreight() {
		return authenticateFreight;
	}

	public void setAuthenticateFreight(BigDecimal authenticateFreight) {
		this.authenticateFreight = authenticateFreight;
	}

	public Integer getAuthenticateFreightType() {
		return authenticateFreightType;
	}

	public void setAuthenticateFreightType(Integer authenticateFreightType) {
		this.authenticateFreightType = authenticateFreightType;
	}

	public Boolean getOfficialLogistics() {
		return officialLogistics;
	}

	public void setOfficialLogistics(Boolean officialLogistics) {
		this.officialLogistics = officialLogistics;
	}

	public Integer getLogisticsAging() {
		return logisticsAging;
	}

	public void setLogisticsAging(Integer logisticsAging) {
		this.logisticsAging = logisticsAging;
	}

	public Boolean getPlaceRisk() {
		return placeRisk;
	}

	public void setPlaceRisk(Boolean placeRisk) {
		this.placeRisk = placeRisk;
	}

	public Boolean getSupplementDomestic() {
		return supplementDomestic;
	}

	public void setSupplementDomestic(Boolean supplementDomestic) {
		this.supplementDomestic = supplementDomestic;
	}

	public String getVoucherOriginalUrl() {
		return voucherOriginalUrl;
	}

	public void setVoucherOriginalUrl(String voucherOriginalUrl) {
		this.voucherOriginalUrl = voucherOriginalUrl;
	}

	public Integer getPayChannelType() {
		return payChannelType;
	}

	public void setPayChannelType(Integer payChannelType) {
		this.payChannelType = payChannelType;
	}

	public Integer getCustomsClearanceStatus() {
		return customsClearanceStatus;
	}

	public void setCustomsClearanceStatus(Integer customsClearanceStatus) {
		this.customsClearanceStatus = customsClearanceStatus;
	}

	public String getCustomsClearanceStatusDesc() {
		return customsClearanceStatusDesc;
	}

	public void setCustomsClearanceStatusDesc(String customsClearanceStatusDesc) {
		this.customsClearanceStatusDesc = customsClearanceStatusDesc;
	}

	public Long getIntegral() {
		return integral;
	}

	public void setIntegral(Long integral) {
		this.integral = integral;
	}

	public BigDecimal getIntegralDeductionAmount() {
		return integralDeductionAmount;
	}

	public void setIntegralDeductionAmount(BigDecimal integralDeductionAmount) {
		this.integralDeductionAmount = integralDeductionAmount;
	}

	public Boolean getCustomsRisk() {
		return customsRisk;
	}

	public void setCustomsRisk(Boolean customsRisk) {
		this.customsRisk = customsRisk;
	}

	public String getCustomsRiskRemark() {
		return customsRiskRemark;
	}

	public void setCustomsRiskRemark(String customsRiskRemark) {
		this.customsRiskRemark = customsRiskRemark;
	}

	public Integer getIdCardCheckResult() {
		return idCardCheckResult;
	}

	public void setIdCardCheckResult(Integer idCardCheckResult) {
		this.idCardCheckResult = idCardCheckResult;
	}

	public Boolean getMultiSegmentDelivery() {
		return multiSegmentDelivery;
	}

	public void setMultiSegmentDelivery(Boolean multiSegmentDelivery) {
		this.multiSegmentDelivery = multiSegmentDelivery;
	}

	public Integer getCustomSettlementCurrencyType() {
		return customSettlementCurrencyType;
	}

	public void setCustomSettlementCurrencyType(Integer customSettlementCurrencyType) {
		this.customSettlementCurrencyType = customSettlementCurrencyType;
	}

	public List<ProductSubCode> getProductSubCodes() {
		return productSubCodes;
	}

	public void setProductSubCodes(List<ProductSubCode> productSubCodes) {
		this.productSubCodes = productSubCodes;
	}

	public Boolean getLiveOrder() {
		return liveOrder;
	}

	public void setLiveOrder(Boolean liveOrder) {
		this.liveOrder = liveOrder;
	}

	public BigDecimal getRegionDiscountRatio() {
		return regionDiscountRatio;
	}

	public void setRegionDiscountRatio(BigDecimal regionDiscountRatio) {
		this.regionDiscountRatio = regionDiscountRatio;
	}

	public BigDecimal getRegionDiscountAmount() {
		return regionDiscountAmount;
	}

	public void setRegionDiscountAmount(BigDecimal regionDiscountAmount) {
		this.regionDiscountAmount = regionDiscountAmount;
	}

	public Integer getSellerCouponSource() {
		return sellerCouponSource;
	}

	public void setSellerCouponSource(Integer sellerCouponSource) {
		this.sellerCouponSource = sellerCouponSource;
	}

	public Integer getSellerCouponType() {
		return sellerCouponType;
	}

	public void setSellerCouponType(Integer sellerCouponType) {
		this.sellerCouponType = sellerCouponType;
	}

	public Long getHelpPayUserId() {
		return helpPayUserId;
	}

	public void setHelpPayUserId(Long helpPayUserId) {
		this.helpPayUserId = helpPayUserId;
	}

	public Integer getEarnestDeliveryPromiseDays() {
		return earnestDeliveryPromiseDays;
	}

	public void setEarnestDeliveryPromiseDays(Integer earnestDeliveryPromiseDays) {
		this.earnestDeliveryPromiseDays = earnestDeliveryPromiseDays;
	}

	public Boolean getIsFullPaidOrder() {
		return isFullPaidOrder;
	}

	public void setIsFullPaidOrder(Boolean isFullPaidOrder) {
		this.isFullPaidOrder = isFullPaidOrder;
	}

	public Integer getCrossBorderType() {
		return crossBorderType;
	}

	public void setCrossBorderType(Integer crossBorderType) {
		this.crossBorderType = crossBorderType;
	}

	public Integer getOrderFlags() {
		return orderFlags;
	}

	public void setOrderFlags(Integer orderFlags) {
		this.orderFlags = orderFlags;
	}

	public PickupStore getPickupStore() {
		return pickupStore;
	}

	public void setPickupStore(PickupStore pickupStore) {
		this.pickupStore = pickupStore;
	}

	@Override
	public String toString() {
		return "Order {id=" + id + ", timeMongoAdd=" + timeMongoAdd
				+ ", timeMongoUpdate=" + timeMongoUpdate + ", mainOrderId="
				+ mainOrderId + ", userId=" + userId + ", sellerId=" + sellerId
				+ ", addTime=" + addTime + ", tradingId=" + tradingId
				+ ", tradingStatus=" + tradingStatus + ", acceptTime="
				+ acceptTime + ", deliveryTime=" + deliveryTime + ", paidTime="
				+ paidTime + ", receiveTime=" + receiveTime + ", cancelTime="
				+ cancelTime + ", riskStatus=" + riskStatus + ", userLogin="
				+ userLogin + ", sellerLogin=" + sellerLogin
				+ ", localDelivery=" + localDelivery + ", deleted=" + deleted
				+ ", preSale=" + preSale + ", remarkLevel=" + remarkLevel
				+ ", autoCancelHour=" + autoCancelHour + ", xlobo=" + xlobo
				+ ", ymtCouponAmount=" + ymtCouponAmount + ", ymtCouponCode="
				+ ymtCouponCode + ", sellerCouponAmount=" + sellerCouponAmount
				+ ", sellerCouponCode=" + sellerCouponCode
				+ ", sellerPromotionAmount=" + sellerPromotionAmount
				+ ", payableAmount=" + payableAmount + ", freight=" + freight
				+ ", totalPrice=" + totalPrice + ", preDiscount=" + preDiscount
				+ ", postCode=" + postCode
				+ ", receiver=" + receiver
				+ ", telephone=" + telephone + ", email=" + email
				+ ", comment=" + comment + ", platSource=" + platSource
				+ ", needUploadIdCard=" + needUploadIdCard
				+ ", uploadedIdCard=" + uploadedIdCard + ", newSeller="
				+ newSeller + ", newUser=" + newUser + ", autoConfirm="
				+ autoConfirm + ", payChannel=" + payChannel + ", payId="
				+ payId + ", tradeNo=" + tradeNo + ", reason=" + reason
				+ ", content=" + content + ", noteTime=" + noteTime
				+ ", deliveryType=" + deliveryType + ", delivered=" + delivered
				+ ", sellerAgent=" + sellerAgent + ", bizId=" + bizId
				+ ", bizStatus=" + bizStatus + ", bizType=" + bizType
				+ ", bizSubType=" + bizSubType + ", fund=" + fund
				+ ", products=" + products + ", refunds=" + refunds
				+ ", statusLog=" + statusLog + ", subProducts=" + subProducts
				+ ", mapProducts=" + mapProducts + ", delivery=" + delivery
				+ ", prepaidCardNos=" + prepaidCardNos
				+ ", prepaidCardRefunds=" + prepaidCardRefunds
				+ ", hunterId=" + hunterId
				+ ", hunterOrderType=" + hunterOrderType
				+ ", uaddress=" + this.uaddress
				+ ", uphone=" + this.uphone
				+ ", bookingPromotionAmount=" + this.bookingPromotionAmount
				+ ", paymentEndTime=" + this.paymentEndTime
				+ ", earnestAmount=" + this.earnestAmount
				+ ", earnestPaidTime=" + this.earnestPaidTime
				+ ", deliverEndTime=" + this.deliverEndTime
				+ ", canConfirm=" + this.canConfirm
				+ ", paymentStartTime=" + this.paymentStartTime
				+ ", optimumSeller=" + optimumSeller
				+ ", addressId=" + this.addressId 
				+ ", earnestThirdpartyRefundStatus=" + this.earnestThirdpartyRefundStatus
				+ ", secondConfirmTime=" + this.secondConfirmTime
				+ ", fullThirdpartyRefundStatus=" + this.fullThirdpartyRefundStatus
				+ ", salesman=" + this.salesman
				+ ", goodsOwnerId=" + this.goodsOwnerId
				+ ", packageDeliveryType=" + this.packageDeliveryType
				+ ", shenqiLogisticsType=" + this.shenqiLogisticsType
				+ ", sellerMemo=" + this.sellerMemo
				+ ", shenqiPaymentRmbAmount=" + this.shenqiPaymentRmbAmount
				+ ", currency=" + this.currency
				+ ", exchangeRate=" + this.exchangeRate
				+ ", currencySymbol=" + this.currencySymbol 
				+ ", shenqiIdcardRequirement=" + this.shenqiIdcardRequirement 
				+ ", shareUserId=" + this.shareUserId
				+ ", rebatePaidAmount=" + this.rebatePaidAmount
				+ ", orderType=" + this.orderType
				+ ", actualRebate=" + this.actualRebate
				+ ", orderOwnerRebateAmount=" + this.orderOwnerRebateAmount
				+ ", memberOrderPaidAmount=" + this.memberOrderPaidAmount
				+ ", supportOfflinePay=" + this.supportOfflinePay
				+ ", offlinePayFlag=" + this.offlinePayFlag
				+ ", shenqiProxyBuyOrder=" + this.shenqiProxyBuyOrder
				+ ", orderAlias=" + this.orderAlias
				+ ", userName=" + this.userName
				+ ", passport=" + this.passport
				+ ", passportIssuePlace=" + this.passportIssuePlace
				+ ", pickupAddress=" + this.pickupAddress
				+ ", pickupName=" + this.pickupName
				+ ", pickupPhone=" + this.pickupPhone
				+ ", pickupUserPhone=" + this.pickupUserPhone
				+ ", pickupInStores=" + this.pickupInStores
				+ ", purchaserIdcardId=" + this.purchaserIdcardId
				+ ", outerPromotionId=" + this.outerPromotionId
				+ ", warehouseId=" + this.warehouseId
				+ ", partialDeliveryStatus=" + this.partialDeliveryStatus
				+ ", distributorId=" + this.distributorId
				+ ", entryIdNo=" + this.entryIdNo
				+ ", entryPort=" + this.entryPort
				+ ", entryIdType=" + this.entryIdType
				+ ", entryTime=" + this.entryTime
				+ ", transportation=" + this.transportation
				+ ", waitInStock=" + this.waitInStock
				+ ", inStockTime=" + this.inStockTime
				+ ", proxyOrderId=" + this.proxyOrderId
				+ ", returnProductStatus=" + this.returnProductStatus
				+ ", luxury=" + this.luxury
				+ ", logistic=" + this.logistic
				+ ", serviceAmount=" + this.serviceAmount
				+ ", authenticateFlag=" + this.authenticateFlag
				+ ", authenticateFreight=" + this.authenticateFreight
				+ ", userAuthenticateFee=" + this.userAuthenticateFee
				+ ", authenticateFreightType=" + this.authenticateFreightType
				+ ", officialLogistics=" + this.officialLogistics
				+ ", logisticsAging=" + this.logisticsAging
				+ ", placeRisk=" + this.placeRisk
				+ ", supplementDomestic=" + this.supplementDomestic
				+ ", voucherOriginalUrl=" + this.voucherOriginalUrl
				+ ", payChannelType=" + this.payChannelType
				+ ", customsClearanceStatusDesc=" + this.customsClearanceStatusDesc
				+ ", customsClearanceStatus=" + this.customsClearanceStatus
				+ ", integral=" + this.integral
				+ ", integralDeductionAmount=" + this.integralDeductionAmount
				+ ", customsRisk=" + this.customsRisk
				+ ", customsRiskRemark=" + this.customsRiskRemark
				+ ", idCardCheckResult=" + this.idCardCheckResult
				+ ", multiSegmentDelivery=" + this.multiSegmentDelivery
				+ ", customSettlementCurrencyType=" + this.customSettlementCurrencyType
				+ ", productSubCodes=" + this.productSubCodes
				
				+ ", liveOrder=" + this.liveOrder
				
				+ ", regionDiscountRatio=" + this.regionDiscountRatio
				+ ", regionDiscountAmount=" + this.regionDiscountAmount
				
				+ ", sellerCouponSource=" + this.sellerCouponSource
				+ ", sellerCouponType=" + this.sellerCouponType
				
				+ ", helpPayUserId=" + this.helpPayUserId
				
				+ ", earnestDeliveryPromiseDays=" + this.earnestDeliveryPromiseDays
				
				+ ", crossBorderType=" + this.crossBorderType
				
				+ ", orderFlags=" + this.orderFlags
				
				+ ", pickupStore=" + this.pickupStore
				+ "}";
	}
}